bootstrap-fix-include-next
authorLLVM Packaging Team <pkg-llvm-team@lists.alioth.debian.org>
Wed, 1 Apr 2020 15:23:55 +0000 (16:23 +0100)
committerJessica Clarke <jrtc27@debian.org>
Wed, 1 Apr 2020 15:23:55 +0000 (16:23 +0100)
commitbe6b6f796fc8e0fae4c601acfe717b8f106609b1
treed18eeac61a614c96bccb75b8bdf0095f78350196
parent06065f7ea653bdec01b908dd7ddf6cc6e7052d2d
bootstrap-fix-include-next

When doing a bootstrap, we use a newly built clang.
When this one is used, if already installed on the system,
we have clang header in two places:
llvm-toolchain-7-7/build-llvm/lib/clang/7.0.0/include/inttypes.h
and
/usr/include/clang/7.0.0/include/inttypes.h

Because clang expects only one of his headers to be available, it uses
include_next to get the glibc (libc6-dev package) header.

However, in the previous example, because we have inttypes.h twice in the
include search path, clang's header will call itself without any effect.
Therefore, it will do include_next until the define from the libc is existing (ex: _INTTYPES_H)

Gbp-Pq: Name bootstrap-fix-include-next.diff
clang/lib/Headers/inttypes.h
clang/lib/Headers/limits.h